Interactive search results page

ABSTRACT

Described herein are various technologies pertaining to presenting search results to a user, wherein the search results are messages generated by way of social networking applications. An interactive graphical object is presented together with retrieved messages, and messages are filtered responsive to interactions with the interactive graphical object. Additionally, a graphical object that is indicative of credibility of a message is presented together with the message.

RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No. 12/967,073, filed on Dec. 14, 2010, and entitled “INTERACTIVE SEARCH RESULTS PAGE”, the entirety of which is incorporated herein by reference.

BACKGROUND

Many different social networking applications currently existent that allow users thereof to generate content that can be viewable by others. An exemplary social networking application allows users to post messages that are made available to all other users of the social networking application that are contacts of such user. Additionally, the user can cause certain content generated by the user be placed in a public feed such that it is available to the general public by way of a search application.

Another exemplary social networking application is a message broadcasting application (which can also be referred to as a micro-blogging application), wherein a user of the broadcasting application can generate content that is automatically broadcast to others that subscribe to broadcasts of the user. Once a subscriber receives broadcast content, she can rebroadcast the content. Many users have also chosen to utilize blogs to make available content generated by such users. Thus, it can be ascertained that there are currently a myriad of mechanisms that can be employed to publish content generated by users.

Due to the ease that a user can publish content, people are currently utilizing social networking applications to distribute substantive content such as breaking news stories. For example, a user at a scene of an accident can capture the accident in an image by way of a mobile telephone, generate text that describes the accident, and post the image and text by way of a social networking application such that the content becomes available to others (e.g., the general public).

A user wishing to search over messages generated by these social networking applications, however, may be unable to ascertain whether such messages are credible. Users currently assess credibility of messages based upon trust relationships with authors whose messages they elect to follow. However, consuming these messages by way of searching for a topic rather than following an author is becoming increasingly prevalent with the introduction of search tools that are configured to search over this type of content. It can be ascertained that increased reliance on messages generated by way of social networking applications makes determining credibility of these messages a non-trivial concern.

SUMMARY

The following is a brief summary of subject matter that is described in greater detail herein. This summary is not intended to be limiting as to the scope of the claims.

Described herein are various technologies pertaining to displaying search results on a search results page are described herein. In a particular example, technologies for displaying messages generated by way of social networking applications as search results pertaining to a query are described herein. A user can indicate that they wish to search over documents generated by identifiable authors, wherein such documents can be referred to herein as “messages”. Messages can include news stories, messages generated by users through utilization of social networking applications, messages generated by news services, etc. In a particular example, messages may refer to broadcasts generated by users of a broadcasting application or posts made to a public data stream by way of a social networking application.

The user can indicate that she wishes to perform a search over these types of messages. Thereafter the user can provide a search application configured to perform searches over messages with a query. The search application can execute a search over a plurality of messages and can select a subset of the plurality of messages for initial display to the user based at least in part upon the query. It is to be understood that searching over these types of messages is starkly different from performing a general web search. For example, a user performing a general web search is searching for a particular page and/or content on such page. In contrast, a user performing a search over messages generated by way of social networking applications often has no idea of a particular message or author that they wish to locate but instead is searching for general news on a topic.

In an exemplary embodiment, messages presented to the user on a graphical user interface can be selected based at least in part upon a diversity of content of such messages. For instance, social networking applications are often utilized to rebroadcast or repost certain messages made by particular authors. It may be undesirable for a user performing a search to see identical content posted by different authors on the search results page. Thus, search results selected for display to the user can be based upon diversity of content of such messages, diversity of authors of such messages, etc.

An interactive graphical object can also be presented to the user together with messages, wherein interaction with such interactive graphical object can cause search results presented to the user to dynamically alter. In a first example, the interactive graphical object can be a phrase cloud that comprises phrases that co-occur across a subset of the search results. This can inform a user of topics that are germane across the plurality messages located by the search application based at least in part upon the query issued by the user. If the user selects a phrase in the phrase cloud, then the search results can be filtered and a new subset of messages can be presented to the user based upon the selected phrase in the phrase cloud.

Another exemplary interactive graphical object can be indicative of sentiment corresponding to messages located during the search. For instance, automated message tone analyzer functionality can be employed to ascertain whether content of a message is generally positive, generally negative, or neutral. An interactive graphical object can indicate a volume of messages that have different sentiments and the user can select a desired sentiment in the interactive graphical object such that messages located during the search that have been assigned such sentiment can be presented to the user as search results.

Another exemplary interactive graphical object can be representative of geographic locations of authors of the messages located during the search. The interactive graphical object can be utilized in connection with filtering messages based upon author location, such that the issuer of the query can choose a certain location that is of interest to the issuer of the query, such as a geographic location that is proximate to the user or a geographic location that is proximate to a particular newsworthy event.

Furthermore, at least one other graphical object can be displayed to the user in connection with a message presented to the user, wherein the graphical object is indicative of credibility of the message and/or credibility of the author of the message. In an example, the graphical object can be a graphical indication of a computed credibility metric, wherein such credibility metric can be based at least in part upon a number of followers of the author, a number of messages generated by the author for a particular topic, and/or a number of rebroadcasts of messages generated by the author. Thus, by viewing such a graphical object, a user performing a search can quickly ascertain whether the message and/or author is relatively credible. This can allow the user to differentiate between a legitimate news item and spam or rumor.

Other aspects will be appreciated upon reading and understanding the attached figures and description.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a functional block diagram of an exemplary system that facilitates presenting search results to a user together with an interactive graphical object.

FIG. 2 is a functional block diagram of an exemplary system that facilitates displaying search results to a user.

FIG. 3 is an exemplary word cloud.

FIG. 4 is an exemplary interactive graphical object that allows filtering of search results by sentiment.

FIG. 5 is an exemplary interactive graphical object that allows filtering of search results by way of time and message sentiment.

FIG. 6 is an interactive graphical object which illustrates search results pertaining to geographic locations.

FIG. 7 illustrates an exemplary search result together with a graphical object that indicates credibility of such search result.

FIG. 8 is an exemplary graphical user interface that comprises information indicative of credibility of a message.

FIG. 9 is an exemplary graphical user interface that displays search results together with interactive graphical objects.

FIG. 10 is a flow diagram that illustrates an exemplary methodology for displaying search results to a user together with graphical objects.

FIG. 11 is an exemplary computing system.

DETAILED DESCRIPTION

Various technologies pertaining to presenting messages to a user that have been generated by identifiable authors will now be described with reference to the drawings, where like reference numerals represent like elements throughout. In addition, several functional block diagrams of exemplary systems are illustrated and described herein for purposes of explanation; however, it is to be understood that functionality that is described as being carried out by certain system components may be performed by multiple components. Similarly, for instance, a component may be configured to perform functionality that is described as being carried out by multiple components. Additionally, as used herein, the term “exemplary” is intended to mean serving as an illustration or example of something, and is not intended to indicate a preference.

With reference to FIG. 1, an exemplary system 100 that facilitates presenting search results to a user is illustrated. The system 100, in an example, can be utilized in connection with presenting documents to a user that have been generated by identifiable authors. These documents can be documents generated by news outlets, messages generated by way of social networking applications, content generated on blogs, etc. As used herein, these documents can be collectively referred to as messages. In a particular example, messages can refer solely to messages generated by users by way of a message broadcasting application and messages posted to a public data stream through use of a social networking application. An identifiable author can be an identifiable individual or an identifiable entity, such as a company or group.

The system 100 comprises a receiver component 102 that receives a query from a user, wherein the query can pertain to a particular topic. A search component 104 is in communication with the receiver component 102 and accesses a data store 106 responsive to receipt of the query. The data store 106 comprises a plurality of messages 108. The search component 104 can perform a search over the messages 108 and can output a plurality of messages based at least in part upon the received query.

The search component 104 can optionally include a diversity determiner component 110 that can determine an amount of diversity pertaining to messages output by the search component 104. For example, with respect to a particular topic, a first author may utilize a social networking application to broadcast a message on that topic. Followers (users that subscribe to receive messages generated by the author by way of the social networking application) of that author may then receive that message and rebroadcast that same message (e.g., to a publicly available data feed). Thus, for a user searching for content on a particular topic, it may be undesirable to present the user with the same content broadcast by different users of the social networking application. The diversity determiner component 110 can computer a measure of content diversity amongst the messages 108 searched over by the search component 104.

The diversity determiner component 110 can perform more granular diversity computations as well. For instance, the issuer of a query may not wish to be presented with messages generated by authors from a same geographic location. Accordingly, the diversity determiner component 110 can computer a measure of geographic diversity pertaining to authors of the messages 108. Still further, the issuer of the query may not wish to receive messages that have the same sentiment. Therefore, the diversity determiner component 110 can compute some measure of diversity of sentiment across the messages 108 searched over by the search component 104.

The search component 104 may also optionally include a selector component 112 that can select messages to present to the issuer of the query based at least in part upon the measure of diversity computed by the diversity determiner component 110. In an example, the selector component 112 can select messages for presentment to the issuer of the query that have relatively diverse contents with respect to the topic being searched by the issuer of the query, have relatively diverse sentiment, and are generated by authors that are relatively geographically diverse. The issuer of the query may indicate ahead of time an amount of diversity and type of diversity that they wish to have computed when selecting messages for presentment to the issuer of the query.

A display component 114 can receive the messages selected by the selector component 112 and can cause these selected messages 116 to be displayed to the issuer of the query in a graphical user interface 118. Together with the selected messages 116, the display component 114 can cause at least one of an interactive graphical object 120 or another graphical object 122 to be presented to the issuer of the query in the graphical user interface 118. The interactive graphical object 120 can be indicative of content of messages located by the search component 104 across such messages. Thus, for instance, the interactive graphical object 120 can be indicative of other topics discussed in related messages, sentiments of documents in the messages retrieved by the search component 104, etc. Furthermore, the issuer of the query can interact with at least a portion of the interactive graphical object 120, wherein an interaction with the interactive graphical object 120 can cause the selected messages 116 presented to the user to change. Additionally, upon interaction with the interactive object 120, the interactive object itself can change. Various exemplary implementations of the interactive graphical objects 120 will be described in detail below.

The graphical object 122 can be representative of a computed credibility of at least one of the selected messages 116 presented to the user and/or credibility of at least one author of the at least one of the selected messages 116. For example, if the messages 108 include messages generated by way of social networking applications, the issuer of the query may have no relationship with the authors of the messages and thus be uncertain as to the credibility of such messages. The graphical object 122 can provide the issuer of the query with some information pertaining to creditability of the messages and/or credibility of the authors. This credibility can be computed in a variety of manners. For instance, the credibility can be computed based at least in part upon a number of subscribers to messages broadcast by the particular author. In another example, a computed credibility can be based at least in part upon a number of messages generated by the author on a topic that is germane to the query. In still yet another example, the computed credibility can be based at least in part upon a number of times that messages generated by the author have been rebroadcast or reposted by other users of social networking applications. Other factors for consideration when computing a credibility of a message and/or author may be recognized by one of ordinary skill in the art and are intended to fall under the scope of the hereto appended claims.

With reference now to FIG. 2, an exemplary system 200 that facilitates presenting search results to a user together with one or more graphical objects that pertain to the search results is illustrated. The system 200 comprises the display component 114 that is configured to present messages to the user in the graphical user interface 118 together with the interactive graphical object 120 and/or the graphical object 122 (FIG. 1). As indicated above, the display component 114 can receive a plurality of messages 202-204, wherein such messages 202-204 have been located by the search component 104 as being germane to the query issued by the user. It is to be understood, however, that not all of the messages 202-204 may be presented to the user. The first message 202 can comprise first content 206, first author information 208, and first metadata 210. The first content 206 can be text or images in the first message 202 generated by a particular author. The first author information 208 can include identity of the author, an image of the author, a biography of the author, etc. The first metadata 210 can comprise information pertaining to the first content 206 and/or the first author. For instance, the first metadata 210 can include information pertaining to location of the author, information pertaining to a social networking application utilized to generate the first content 206, a URL corresponding to such first content 206, a number of posts generated by the author with respect to a topic pertaining to the first content 206, a number of subscribers or contacts of the author in a social networking application, a number of times that the first content 206 has been redistributed by other individuals using a social networking application, amongst other metadata. Similarly the Nth message 204 can include Nth content 212, Nth author information 214, and Nth metadata 216.

The display component 114 can receive and analyze these messages 202-204 in connection with presenting a subset of the messages 202-204 to the user as well as to present the interactive graphical object 120 and/or the graphical object 122 to the user. For example, the display component 114 may comprise a keyword analyzer component 218 that can search the first content 206 through the Nth content 212 of the search results 202-204 for various keywords or phrases that co-occur across messages located by the search component 104.

Turning briefly to FIG. 3, an exemplary phrase cloud 300 is illustrated. The phrase cloud 300 comprises multiple phrases that co-occur across at least some of the messages 202-204, wherein such phrases were not included in the initial query issued by the user. Thus, these phrases may indicate other topics that are being discussed in the messages retrieved by the search component 104. In the exemplary phrase cloud 300 shown in FIG. 3, a size pertaining to a phrase in such phrase cloud 300 can be indicative of a number of messages in the messages 202-204 that include the phrase (an amount of co-occurrence of the phrase across the messages 202-204). Thus, the first phrase co-occurs more often in the search results 202-204 than the second phrase.

This phrase cloud 300 can be presented on the graphical user interface as the interactive graphical object 120, such that the issuer of the query can select one or more of the phrases in the phrase cloud 300. Responsive to user selection of one of these phrases, the search results located by the search component 104 can be filtered using the query initially issued by the user in combination with the phrase selected in the phrase cloud 300. Alternatively, these phrases may be suggested or alternate query such that a new search is conducted upon user selection of one of the phrases in the phrase cloud 300. The new search, then, is based at least in part upon the phrase selected by the user from the phrase cloud 300, and updated search results can be dynamically presented to the user on the graphical user interface 118.

Returning to FIG. 2, the display component 114 can additionally comprise a sentiment determiner component 220 that can determine a sentiment corresponding to each of the messages 202-204. For instance, the sentiment determiner component 220 can utilize any suitable language/tone analysis technique to determine a sentiment corresponding to a message. In an example, the sentiment determiner component 220 can analyze first content 206 in the message 202 and determine that the first content 206 includes generally positive language. Accordingly, the sentiment determiner component 220 can determine that the sentiment of the message 202 is positive. In contrast, the sentiment determiner component 220 can analyze the Nth content 212 of the Nth message 204 and can determine that language utilized in such message 204 is generally negative. Accordingly, the sentiment determiner component 220 can indicate that the sentiment of the message 204 is negative. In yet another example, the sentiment determiner component 220 can analyze content of a different message and determine that the sentiment is relatively neutral (i.e., neither positive nor negative). It is to be understood that the sentiment determiner component 220 can determine sentiment with respect to any suitable metrics or parameters. For example, the sentiment determiner component 220 can determine political nature of search results (e.g., democratic or republican). It can therefore be ascertained that the sentiment determiner component 220 can determine a variety of sentiments with respect to the messages 202-204. Additionally, the display component 114 can display the interactive graphical object 120 in the graphical user interface 118 based at least in part upon sentiment corresponding to the messages 202-204 determined by the sentiment determiner component 220.

Referring briefly to FIG. 4, an exemplary interactive graphical object 400 that can be presented in the graphical user interface 118 is shown. For example, the interactive graphical object 400 can enable the issuer of the query to filter messages based at least in part upon sentiment determined by the sentiment determiner component 220. As shown, the interactive graphical object 400 can be a bar chart that comprises three separate columns 402, 404 and 406, wherein such columns can indicate sentiment corresponding to messages retrieved by the search component 104 with respect to a volume of messages retrieved by the search component 104. For instance, the first column 402 can indicate that a certain volume of retrieved messages have a first sentiment corresponding thereto (e.g., positive). Similarly, the second column 404 can indicate that a greater number of retrieved messages are of the second sentiment than retrieved messages that are or the first sentiment. For instance, if the second sentiment is negative, the issuer of the query can quickly ascertain that more retrieved messages have been assigned a negative sentiment than a positive sentiment. Similarly, the third column 406 can indicate a certain volume of retrieved messages that have a third sentiment. The issuer of the query may select any one of the columns 402-406, which can cause messages to be filtered based at least in part upon sentiment of such messages as determined by the sentiment determiner component 220. Thus, if the issuer of the query selected the second column 404, then messages retrieved by the search component 104 based at least in part upon the query issued by the user that are of the second sentiment can be presented to the user in the graphical user interface 118.

Referring now to FIG. 5, another exemplary interactive graphical object 500 that can be displayed in the graphical user interface 118 is illustrated. Again, the interactive object 500 can indicate to the issuer of the query the volume of retrieved messages that have been assigned certain sentiments as determined by the sentiment determiner component 220. Additionally, the interactive graphical object 500 can indicate a volume of retrieved messages with varying assigned sentiments with respect to time. The interactive graphical object 500 can comprise a first region 502 that corresponds to a first sentiment, a second region 504 that corresponds to a second sentiment, and a third region 506 that corresponds to a third sentiment. If the issuer of the query wishes to filter retrieved messages based upon sentiments corresponding to such messages, then the issuer of the query can select one of the portions 502, 504 or 506 of the interactive graphical object 500. This can cause retrieved messages to be filtered based at least in part upon the selection of one of the portions 502, 504 or 506.

Additionally, the issuer of a query may wish to filter retrieved messages based on sentiment and time. Thus, for instance, the issuer of the query may first select a portion of the interactive graphical object 500 that corresponds to a certain date or time, and may thereafter select a region or portion of the interactive graphical object 500 that corresponds to a particular sentiment. As shown in the interactive graphical object 500, the issuer of the query can first select a tick mark corresponding to a time T₁ and may thereafter select the region 502 of the interactive graphical object 500. This can cause retrieved messages generated at times T₁ (a certain day) that have a particular sentiment assigned thereto by the sentiment determiner component 220 to be presented to the user on the graphical user interface 118. Other mechanisms for utilizing such an interactive graphical object 500 to filter messages based at least in part upon time and sentiment are contemplated and are intended to fall under the scope of the hereto-appended claims.

Now referring to FIG. 6, yet another exemplary interactive graphical object 600 that can be displayed in the graphical user interface 118 together with retrieved message pertaining to a query is illustrated. The interactive graphical object 600, in an example, can be a map that comprises a plurality of different geographic regions 602-612. These geographic regions 602-612 can be, for example, cities, counties, townships, states, countries, etc. The geographic regions 602-612 represented in the map can be assigned certain colors or shaded in particular manners to indicate a sentiment of messages corresponding to the geographic regions 602-612. Additionally, multiple colored regions can be assigned to each of the geographic regions 602-612 to illustrate distribution of sentiment of messages for the geographic regions 602-612. For example, with respect to a topic pertaining to the query issued by the user, the geographic regions 602 and 610 can generally be associated with authors that generate messages with a first sentiment; the geographic regions 604 and 608 can generally be associated with messages that have a second sentiment; and a geographic region 606 and 612 can have messages that generally have a third sentiment. Still further, each geographic region can have text or some other data corresponding thereto that indicates a volume of messages pertaining to the query corresponding to the particular geographic region 602-612. Such volume can be useful to the issuer of query if the issuer of the query wishes to see how many messages are generated at different geographic locations.

The issuer of the query can interact with the interactive graphical object 600 by selecting on one or more of the geographic regions and/or particular portions of such geographic regions 602-612 to filter messages based on geography and sentiment. Therefore, if the issuer of the query wished to see only messages generated from the geographic region 608 that have a positive sentiment, the issuer of the query can select a particular portion of the geographic region 608 corresponding to messages with positive sentiment, and updated search results (messages) can be provided to the issuer of the query responsive to such selection. Additionally, the interactive graphical object 600 can include a slider 614 that allows the issuer of the query to filter messages based upon a selected time. Therefore, for instance, the issuer of the query can first select a particular portion of a geographic region representative of a map and then may move the slider 614 to a time that is of interest to the issuer of the query. Thereafter, messages pertaining to such geographic region, sentiment, and time can be presented to the user.

Referring back to FIG. 2, the display component 114 can also comprise a credibility determiner component 222 that can compute a credibility metric pertaining to a message based at least in part upon a variety of factors. These factors can include user ratings assigned to an author of the message, a number of individuals that have subscribed to receive messages broadcast by the author, a number of messages generated by the author on a particular topic that is germane to the query, whether the author of the message has been authenticated or in some way endorsed by a particular social networking application, amongst various other factors.

Other factors that can be utilized by the credibility determiner component 222 when computing a credibility metric can include, for example, a number of network hops (in the social network of the user and contacts of the user) that connect the author of a message the querier, or factors outside the social networking system such as information about the author obtained from other web pages. This information can include a number of articles credited to the author available on other web pages, tone/sentiment of articles posed by the author on other web pages, etc. Still further, the credibility metric computed by the credibility determiner component 222 can be personalized for the user based at least in part upon the user's past searching and web browsing history. For example, if the user frequently reads articles from a newspaper online, then the credibility determiner component 222 can output a relatively high credibility metric for messages generated by authors from the newspaper. The display component 114 may then cause the graphical object 122 to be displayed to the user to indicate creditability of the message determined by the credibility determiner component 222.

With reference now to FIG. 7, an exemplary message 700 that can be presented to the user in the graphical user interface 118 is illustrated, wherein the message 700 includes a graphical object that is indicative of credibility of the message. For example, the graphical object 122 can be implemented as a temperature gauge 702, wherein the temperature gauge 702 indicates a credibility of the message 700 and/or the author of the message 700. For instance, the temperature gauge 702 can comprise a first portion 704 and a second portion 706, wherein the more space or area of the temperature gauge 702 that is occupied by the second portion 706, the more credible the message 700 and/or the more credible the author of the message 700.

The message 700 can additionally comprise an author photograph and/or an avatar 708 that is representative of the author. The message 700 can further comprise an author name, at least a snapshot (summary) of the content of the message 700, message metadata and/or message credibility data. Additionally, the message 700 can comprise a URL that indicates where on the World Wide Web the message 700 can be located. The message metadata can include information such as a time that the message 700 was generated, a location corresponding to an author of the message 700, amongst other data. The message credibility data can indicate a number of subscribers to messages generated by the author of such message 700, data pertaining to whether the author has been authenticated or endorsed by a particular social networking application used to generate the message 700, etc. Of course there are other manners or mechanisms other than the temperature gauge 702 to indicate credibility of the message, such as a star rating system, where a greater number of stars assigned to the message, the more credible the message, or other graphical objects that can be used to indicate credibility of a message.

With reference again to FIG. 2, the display component 114 can comprise a hover detector component 224 that can sense when a user is hovering over a portion of a message (e.g., through utilization of a mouse pointer), such as the message 700. For example, the user can hover over the temperature gauge 702, the content of the message 700, the author photo/avatar 708, etc. Upon the hover detector component 224 determining that the issuer of the query is hovering over a particular portion of a message, the display component 114 can cause a graphical object indicative of credibility of the message and/or author to be presented to the user.

Now referring to FIG. 8, a graphical user interface 800 that can be displayed to the user in the graphical user interface 118 together with message germane to a query is illustrated. The graphical user interface 800 can be displayed to the user upon the hover detector component 224 detecting that the user is hovering over at least a portion of a message presented to the user in the graphical user interface 118. The graphical user interface 800 can include, for example, a graphical indicia 802 that indicate factors utilized to compute the measure of credibility of the message and/or the measure of credibility of the author of the message. In this example, the graphical indicia 802 is shown to be a bar chart that comprises a plurality of different columns wherein, for instance, a first column can indicate a number of followers of the author (subscribers to messages generated by the author), a second column can indicate a number of messages by the author that are rebroadcast by others, and the third column can indicate, for instance, a number of messages generated by the author on the topic pertaining to the query. Other factors can be utilized to compute the measure of credibility and other graphical indicia, such as pie charts, numerical values, etc. can be utilized to depict different factors utilized when computing the measure of credibility of a message.

The graphical user interface 800 can further comprise author account data, such as data that indicates a type of social networking application used to generate the message as well as contact information of the author, which may be e-mail address, home page of the author, etc.

The graphical user interface 800 may further comprise biographical information 806 pertaining to the author, wherein such biographical information 806 can be retrieved from the social networking account utilized to generate the message, scraped from the World Wide Web, or obtained from any other suitable means. The graphical user interface 800 may further comprise location information 808 that indicates a location of the author of the message. This location information 808 can be textual, may be shown in the form of a map, etc. The graphical user interface 800 can further comprise sentiment/topic information 810. This sentiment/topic information 810 can indicate a general sentiment of messages published by the author of such message and/or a topical distribution of messages generated by such author. Accordingly, by hovering over a message, the issuer of the query can quickly ascertain a significant amount of information about the author of such message, which can be indicative of credibility of the author and thus credibility of the message itself.

Turning now to FIG. 9, an exemplary implementation 900 of the graphical user interface 118 is presented. The graphical user interface 118 can comprise a query field 902 that is configured to receive a query from a user. The graphical user interface 118 can further comprise a push button 904, wherein depression of the push button 904 subsequent to the user issuing a query to the query field 902 can cause messages to be searched over utilizing such query. Subsequent to a user issuing a query, the graphical user interface 118 can comprise a search results field 906 that includes a plurality of messages such as message 700 shown in FIG. 7. These messages can be a subset of messages that are found to be relevant to a query issued by the user. For instance, the search component 104 (FIG. 1) can determine that the messages included in the search results field 906 are the most relevant messages to the query issued by the user. Other search results, however, may be relevant to a query and may not be displayed due to lack of screen real estate.

If the user hovers over a particular portion of one of the messages depicted in the search results field 906, then the graphical user interface 800 can be presented to the user, wherein such graphical user interface 800 displays data pertaining to the author and/or message hovered over by the user.

The graphical user interface 118 can further include the phrase cloud 300 that presents to the user phrases that co-occur across messages located by the search component 104. The user may select one of the phrases shown in the phrase cloud 300, which can cause messages in the search results field 906 to be dynamically updated based at least in part upon the phrase in the phrase cloud 300 selected by the user. As indicated above, selection of a phrase may cause an entirely new search to be performed or can be utilized to filter messages previously located by the search component 104.

The graphical user interface 118 may also comprise the interactive graphical object 500, wherein such interactive graphical object 500 can indicate different sentiments corresponding to messages retrieved by the search component 104. As described above, the volume of messages with various sentiments can be displayed with respect to time, such that through interaction with the interactive graphical object 500 the user can choose to be provided with messages of a particular sentiment and/or messages generated at particular periods of time. The interactive graphical object 500 can have a legend 908 corresponding thereto that indicates to the user which of the portions of the interactive graphical object 500 correspond to which sentiment.

Still further, the graphical user interface 118 can include a slider 910 that allows the user to filter messages based upon geography corresponding to such search results. For instance, a top of the slider 910 may restrict messages presented to the user to a particular locality while a bottom of the slider 910 may allow messages from a larger geographic region to be presented to the user. If the user chooses to alter position of the slider 910, then the content depicted in the interactive graphical object 500 can dynamically alter and messages presented in the search results field 906 can dynamically update based at least in part upon a geography selected by the user.

With reference now to FIG. 10, an exemplary methodology 1000 is illustrated and described. While the methodology 1000 is described as being a series of acts that are performed in a sequence, it is to be understood that the methodology is not limited by the order of the sequence. For instance, some acts may occur in a different order than what is described herein. In addition, an act may occur concurrently with another act. Furthermore, in some instances, not all acts may be required to implement a methodology described herein.

Moreover, the acts described herein may be computer-executable instructions that can be implemented by one or more processors and/or stored on a computer-readable medium or media. The computer-executable instructions may include a routine, a sub-routine, programs, a thread of execution, and/or the like. Still further, results of acts of the methodology may be stored in a computer-readable medium, displayed on a display device, and/or the like. The computer-readable medium may be a non-transitory medium, such as memory, hard drive, CD, DVD, flash drive, or the like.

The methodology 1000 shown in FIG. 10 facilitates presenting an interactive search results page to a user, wherein the search results page displays messages or content generated by way of identifiable authors. The methodology 1000 begins at 1002, and at 1004 an indication is received from a user that the user wishes to search over a plurality of messages. For example, the user can select a particular vertical in a general purpose search engine to indicate that they wish to search over messages generated by way of social networking applications. In another example, the user may direct a browser to a URL corresponding to a search portal that is configured to search over messages with identifiable authors.

At 1006, a query is received from the user. This query can be received by way of a text entry field in a search engine, through voice analysis, etc. At 1008, based at least in part upon the indication received at 1004 and the query received at 1006, a plurality of messages are located, wherein such plurality of messages are generated by different authors.

At 1010, a first set of messages is displayed to the user, wherein the first set of messages is selected from the plurality of messages located at 1008. For instance, the first set of messages can be selected based at least in part upon diversity of contents of messages in the first set of messages, diversity of authors of messages in the first set of messages, etc. Therefore, the first set of messages can comprise messages that are believed to be most relevant to the informational intent of the user.

At 1012, an interactive graphical object is displayed together with the first set of messages, wherein the interactive graphical object is representative of content across the plurality of messages located at 1008. Accordingly, the interactive graphical object can indicate phrases that co-occur across messages in the plurality of messages located at 1008, can indicate sentiment across messages in the plurality of messages located 1008, etc.

At 1014, a graphical object is displayed that is indicative of credibility of at least one message in the first set of messages. This graphical object is displayed together with the first set of messages and the interactive graphical object. For instance, the graphical icon can be a temperature gauge that illustrates credibility of an author and/or message shown to the user, can be a star rating system that indicates credibility of an author and/or message presented to the user, etc.

At 1016, a selection of a portion of the interactive graphical object is received. For instance, the user may select a phrase that co-occurs across the plurality of messages located at 1008. In another example, the user can select a particular sentiment of messages that occur in the plurality of messages located at 1008, etc.

At 1018, a second set of messages is displayed to the user based at least in part upon the portion of the interactive graphical object selected by the user at 1016. Thus, for instance, if the user selected a portion of the interactive graphical object that corresponded to a particular sentiment, then only messages that have such sentiment can be presented to the user. The methodology 1000 completes at 1020.

Now referring to FIG. 11, a high-level illustration of an exemplary computing device 1100 that can be used in accordance with the systems and methodologies disclosed herein is illustrated. For instance, the computing device 1100 may be used in a system that supports searching over messages generated by way of social networking applications. In another example, at least a portion of the computing device 1100 may be used in a system that supports presenting interactive graphical objects to users that allow users to dynamically update search results. The computing device 1100 includes at least one processor 1102 that executes instructions that are stored in a memory 1104. The memory 1104 may be or include RAM, ROM, EEPROM, Flash memory, or other suitable memory. The instructions may be, for instance, instructions for implementing functionality described as being carried out by one or more components discussed above or instructions for implementing one or more of the methods described above. The processor 1102 may access the memory 1104 by way of a system bus 1106. In addition to storing executable instructions, the memory 1104 may also store messages, data pertaining to authors, etc.

The computing device 1100 additionally includes a data store 1108 that is accessible by the processor 1102 by way of the system bus 1106. The data store 1108 may be or include any suitable computer-readable storage, including a hard disk, memory, etc. The data store 1108 may include executable instructions, messages that can be searched over by a user, authors pertaining to such messages, metadata pertaining to such messages, etc. The computing device 1100 also includes an input interface 1110 that allows external devices to communicate with the computing device 1100. For instance, the input interface 1110 may be used to receive instructions from an external computer device, from a user, etc. The computing device 1100 also includes an output interface 1112 that interfaces the computing device 1100 with one or more external devices. For example, the computing device 1100 may display text, images, etc. by way of the output interface 1112.

Additionally, while illustrated as a single system, it is to be understood that the computing device 1100 may be a distributed system. Thus, for instance, several devices may be in communication by way of a network connection and may collectively perform tasks described as being performed by the computing device 1100.

As used herein, the terms “component” and “system” are intended to encompass hardware, software, or a combination of hardware and software. Thus, for example, a system or component may be a process, a process executing on a processor, or a processor. Additionally, a component or system may be localized on a single device or distributed across several devices. Furthermore, a component or system may refer to a portion of memory and/or a series of transistors.

It is noted that several examples have been provided for purposes of explanation. These examples are not to be construed as limiting the hereto-appended claims. Additionally, it may be recognized that the examples provided herein may be permutated while still falling under the scope of the claims. 

What is claimed is:
 1. A system comprising at least one processor; and memory storing instructions that, when executed by the at least one processor, cause the at least one processor to perform acts comprising: in response to receiving a query, outputting a plurality of messages generated by way of at least one social networking application, where the plurality of messages have sentiments assigned thereto; filtering a subset of messages from the plurality of messages in response to a user selection of a sentiment from the sentiments, the subset of messages assigned the sentiment; and causing the subset of messages to be displayed on a client computing device of the user.
 2. The system of claim 1, wherein the plurality of messages are output based upon a measure of diversity across the plurality of messages.
 3. The system of claim 2, wherein the measure of diversity is a measure of diversity of sentiment across the plurality of messages.
 4. The system of claim 2, wherein the measure of diversity is a measure of geographical diversity of authors of the plurality of messages.
 5. The system of claim 1, the acts further comprising computing sentiments for the plurality of messages based upon content of the respective messages, wherein the sentiments assigned to the plurality of messages are the computed sentiments.
 6. The system of claim 1, the acts further comprising causing a graphical object to be displayed on the client computing device, the graphical object indicating numbers of messages corresponding to respective sentiments in the sentiments.
 7. The system of claim 6, wherein the graphical object comprises a bar chart, the bar chart comprising: a first column corresponding to a first sentiment in the sentiments, a size of the first column based upon a number of messages in the plurality of messages assigned the first sentiment; and a second column corresponding to a second sentiment in the sentiments, a size of the second column based upon a number of messages in the plurality of messages assigned the second sentiment.
 8. The system of claim 1, the acts further comprising causing a graphical object to be displayed on the client computing device, the graphical object indicative of a social networking application used to generate a first message in the plurality of messages.
 9. The system of claim 1, the acts further comprising causing a graphical object to be displayed on the client computing device, the graphical object indicative of a number of messages in the plurality of messages generated prior to a first time.
 10. The system of claim 1, the acts further comprising causing an interactive graphical object to be displayed on the client computing device, wherein interaction with the interactive graphical object causes messages presented to the user to alter based upon a time of generation of the messages.
 11. A method comprising, performing a search over a plurality of messages based upon a received query, the plurality of messages generated by at least one social networking application; identifying a first subset of messages from the plurality of messages based upon the search; causing messages in the first subset of messages to be displayed on a display; causing an interactive graphical object to be displayed on the display together with the messages, the interactive graphical object comprises a selectable phrase, the selectable phrase found in at least one message in the first subset of messages; and responsive to receiving a selection of the selectable phrase in the interactive graphical object, causing a second subset of messages to be displayed on the display, each message in the second subset of messages comprises the phrase, the second subset of messages being from the first subset of messages.
 12. The method of claim 11, wherein the messages in the first subset of messages are selected for display based upon a measure of diversity across the messages in the first subset of messages.
 13. The method of claim 12, wherein the measure of diversity is a measure of diversity across content of the messages in the first subset of messages.
 14. The method of claim 12, wherein the measure of diversity is a measure of geographic diversity pertaining to authors of the messages in the first subset of messages.
 15. The method of claim 12, wherein the measure of diversity is a measure of diversity of sentiment across the messages in the first subset of messages.
 16. The method of claim 11, wherein the selectable phrase is not included in the received query.
 17. The method of claim 11, further comprising causing a second graphical object to be displayed on the display, the second graphical object indicative of at least one of: a number of messages generated in a defined time window; a number of messages generated by way of a particular social network application; or a number of messages assigned to a particular sentiment.
 18. The method of claim 11, further comprising: causing a second interactive graphical object to be displayed on the display, wherein the second interactive graphical object is representative of a number of messages that are assigned a geographic region; and responsive to receiving an indication of user interaction with the second interactive graphical object, filtering, based upon geographic regions associated with respective messages, one of: the first subset of the plurality of messages; or the second subset of the plurality of messages.
 19. The method of claim 11, further comprising causing a second graphical object to be displayed on the display, wherein the second graphical object is representative of a number of messages generated by an author on a topic pertaining to the query.
 20. A computer-readable storage medium comprising instructions that, when executed by a processor, cause the processor to perform acts comprising: in response to receiving a query, outputting, based upon the query, a plurality of messages generated by way of at least one social networking application; filtering a first subset of messages from the plurality of messages based upon a measure of diversity between messages in the first subset of messages; causing the first subset of messages to be displayed on a display of a client computing device; causing a plurality of selectable phrases to be displayed on the display of the client computing device, wherein the phrases are phrases not included in the query; responsive to receiving a user selection of a first phrase in the plurality of selectable phrases, causing a second subset of messages to be displayed on the display of the client computing device, each message in the second subset of messages comprises the first phrase. 